Method and Apparatus for Medium Access Control for a Decentralized Network with Adapted Beamforming and Power Control

ABSTRACT

A method and apparatus for medium access control in a wireless ad hoc network is disclosed that takes advantage of physical layer properties to jointly and collectively optimize in a distributed fashion transmission parameters such as beam-patterns and transmit powers of all active links in the network. To resolve signal transmission contention, each potential link is associated with a persistence parameter and the persistence parameter is adapted locally, with no central control, to provide medium access for transmissions. Where a node contending for a transmission slot is unable to optimize its transmission parameters due to an invalidity condition or infeasibility condition, the persistence parameter is updated, preferably so as to reduce the probability of such conditions.

This application claims the benefit of U.S. Provisional Application No. 60/696,220, filed Jul. 1, 2005, which is hereby incorporated herein by reference.

BACKGROUND OF THE INVENTION

The present invention relates generally to medium access control in communication networks.

Sensor networks are used in many different applications such as, for example, habitat monitoring, location tracking and inventory management. Such networks are typically characterized by hundreds or thousands of individual sensors located at sensor nodes distributed over a desired area. The sensors in a sensor network are typically able to communicate, for example via wired or wireless communications methods, to other sensors and one or more monitoring nodes in the network. Each sensor is able to detect at least one characteristic of its surroundings by obtaining appropriate measurements, such as acoustic, temperature, seismic, or other measurements, and may be able to perform simple computations related to those measurements. Then, at a predetermined schedule or in response to an ad hoc request from, for example, a monitoring node, the sensor transmits those measurements and computations to other nodes in the network, such as to the aforementioned monitoring node.

Sensor networks face significant energy constraints because, typically, sensors are spread over a wide area and are unattended. Accordingly, replacing batteries on the sensors may be cost and time prohibitive or even impossible. While such sensors have gained significantly in processing abilities, the amount of energy stored in sensor batteries has not gained to such an extent. Therefore, many advanced techniques for routing, communications, signal processing and hardware design have been used to help reduce the required transmit power and, hence, increase the life of batteries.

One such technique uses multiple cooperating antennas to increase the throughput and/or substantially reduce the transmit power of the communication system. Such techniques may be implemented, illustratively, using well-known Multiple Input, Multiple Output (MIMO) algorithms at the physical layer (PHY) of a network to exploit phenomena such as multipath propagation to increase throughput, or reduce bit error rates, rather than attempting to eliminate effects of multipath propagation distortion. Such techniques are useful to reduce the required transmit power for a signal.

A distributed sensor network can use such multi-antenna techniques by forming cooperating sensor clusters that function as virtual antenna arrays. However, system performance is dependent not only on algorithms at the physical layer, but also is dependent on the design of higher layers, such as at the medium access control (MAC) layer, as well as the interaction between different layers. Wireless medium access control (MAC) protocols used in wireless ad hoc networks, such as IEEE 802.11, are widely deployed but typically do not effectively consider advanced physical layer (PHY) technologies such as adaptive beamforming and power control. Some prior attempts have relied on non-adaptive directional antennas or independent beamforming by a single user, which is typically unable to sufficiently account for interference when the network is densely populated. On the other hand, other prior attempts have relied on centralized control for data transmission, which is only possible with increased network overhead due to the increased data traffic between network nodes and a central control node.

SUMMARY OF THE INVENTION

The present invention substantially solves the foregoing problems. In accordance with the principles of the present invention, physical layer properties are used jointly and collectively to optimize in a distributed fashion transmission parameters such as beam-patterns and transmit powers of all active links in the network. To resolve signal transmission contention, each potential link is associated with a persistence parameter and the persistence parameter is adapted locally, with no central control, to provide medium access for transmissions. Where a node contending for a transmission slot is unable to optimize its transmission parameters due to an invalidity condition or infeasibility condition, the persistence parameter is updated, preferably so as to reduce the probability of such conditions.

The medium access control technique disclosed herein, when utilized in conjunction with advanced physical-layer techniques for spatial reuse, advantageously facilitates enhanced throughput and a reduction in average transmit power, even with a small number of cooperating antennas. These and other advantages of the invention will be apparent to those of ordinary skill in the art by reference to the following detailed description and the accompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIGS. 1A and 1B are diagrams illustrating a wireless communication network, suitable for implementing an embodiment of the present invention;

FIG. 2 illustrates the slot structure of a medium access control method in accordance with an embodiment of the invention;

FIG. 3 is pseudo-code illustrating Iterative Minimum Mean Square Error distributed beamforming;

FIGS. 4A and 4B are diagrams illustrating examples of sets of active links;

FIG. 5 is a flowchart of the processing performed by the nodes in the network in accordance with a medium access control arrangement in accordance with an embodiment of the present invention; and

FIG. 6 shows an illustrative network node in accordance with another embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1A is a diagram illustrating a wireless communication network 100 in accordance with one embodiment of the present invention. Wireless network 100 has, illustratively, a plurality of nodes 110-175, each having one or more wireless antennas. Nodes 110-175 illustratively have an array of multiple cooperating antennas so as to take advantage of multiple input, multiple output (MIMO) techniques, as discussed above. Each node is, for example and without limitation, a network of wireless sensors, such as that discussed above, which gather and transmit information in a distributed manner. A group of such sensors can be combined into one node to form a cooperating sensor cluster that functions as a virtual antenna array. Nodes 110-175 are illustratively arranged in an ad hoc network. As is well known, an ad hoc network is a network in which nodes directly discover and communicate in a peer-to-peer fashion without involving a central access point. In such a network, nodes 110-175 share information symbols to be transmitted and are capable of synchronizing their activities.

In order to communicate with one another, the nodes 110-175 of FIG. 1A may use the multiple antennas in those nodes to perform adaptive beamforming. As will be familiar to one skilled in the art, adaptive beamforming is a technique in which an array of antennas is able to achieve maximum reception in a specific angular direction by estimating the signal arrival from a desired direction (in the presence of noise) while signals of the same frequency from other directions are rejected. This is achieved by varying the weights of each of the sensors (antennas) used in the array. The spatial separation of arriving signals is exploited to separate the desired signal from the interfering signals. In adaptive beamforming the optimum weights of the antennas are typically iteratively computed. As is also known to one skilled in the art, beamforming is generally accomplished by phasing the feed to each element of an array so that signals received or transmitted from all elements will be in phase in a particular direction. For example, FIG. 1B, discussed further herein below, shows illustrative beam patterns for the network depicted in FIG. 1A. Such adaptive beamforming using an advantageous algorithm in accordance with an embodiment of the present invention is also discussed further herein below.

FIG. 2 shows one illustrative embodiment of how nodes 110-175 of FIGS. 1A and 1B use medium access control to transmit data. Specifically, referring to FIG. 2, access to the wireless transmission medium is provided using transmission slots. Different transmissions from different users (e.g., different sensor nodes) are multiplexed onto the transmission medium using those slots. As one skilled in the art will recognize, the type of transmission slot will depend on the particular multiplexing technique utilized, e.g., the transmission slot would represent a time slot if a time division multiplexing technique is utilized. In FIG. 2, each transmission slot 200 is subdivided into a contention resolution period 210 and a data transmission period 250. During the contention resolution period 210, in accordance with one embodiment of the present invention, the nodes in the network jointly and cooperatively determine advantageous physical layer (PHY) beamforming and power control parameters. One advantageous method useful in performing such beamforming/power control functions during contention period 210 is the Iterative Minimum Mean Square Error (IMMSE) method, which is shown in FIG. 3 and described below, and which is further described in greater detail in S.-J. Kim, “Space-Time Synchronization and Beamforming for Wireless Communication,” Ph.D. Dissertation, University of California, Santa Barbara (January 2005), which is hereby incorporated by reference herein in its entirety. One skilled in the art will recognize, however, that the present invention is not limited to any specific beamforming/power control technique and that any such suitable technique may be used with equally advantageous results. During contention period 210, using a beamforming/power control technique allows each node to adaptively compute transmit and receive beamforming parameters using only local information while minimizing the transmit power under a signal quality constraint represented by a target signal to interference and noise ratio (SINR). Since such a method can jointly determine the set of beamforming parameters and powers for all links in the network, spatial reuse of the network can illustratively be maximized during contention period 210 and, as a result, the transmit power required by the network can be minimized.

As discussed above, in accordance with the principles of the present invention, a method for determining beamforming and power control parameters can be used during contention period 210 of a medium access control process to optimize the links in a network. As also discussed above, FIG. 3 shows such a method. Specifically, referring to FIG. 3, in a wireless sensor network there are illustratively N links for which data transmission requires scheduling. For each link i, where i=1, 2, . . . , N, the source and the destination nodes are denoted by S(i) and D(i), respectively. Although the number of antennas as mentioned above can vary depending on the node, for convenience of discussion, assume that each node has M antenna elements. The MIMO channel is assumed without limitation to be flat (i.e., frequency non-selective) and represented by an M-by-M complex matrix H_(D(i),S(i)). Then, the received signal at node D(i) can be represented by an M-vector: $\begin{matrix} {Y_{D{(i)}} = {{\sqrt{P_{i}}H_{{D{(i)}},{S{(i)}}}g_{i}b_{i}} + {\sum\limits_{{j = 1},{j \neq i}}^{N}{P_{j}H_{{D{(i)}},{S{(i)}}}g_{j}b_{j}}} + n_{D{(i)}}}} & {{Equation}\quad 1} \end{matrix}$ where P_(i) is the transmit power; g_(i) is the unit-norm transmit beamforming weight; b_(i) is the transmitted symbol with E|b_(i)|²=1 for each link i; and n_(D(i)) is the additive thermal noise whose covariance is normalized to an identity matrix. Assuming a unit-norm receive beamforming weight w_(i) is used at node D(i), the received SINR for link i may be expressed as: $\begin{matrix} {\Gamma_{i} = \frac{P_{i}{{w_{i}^{H}H_{{D{(i)}},{S{(i)}}}g_{i}}}^{2}}{{\sum\limits_{{j = 1},{j \neq i}}^{N}{P_{j}{{w_{i}^{H}H_{{D{(i)}},{S{(i)}}}g_{j}}}^{2}b_{j}}} + 1}} & {{Equation}\quad 2} \end{matrix}$

The network-wide optimization problem is then given by: $\begin{matrix} {{\min\limits_{\underset{{i = 1},2,\quad\ldots\quad,N}{w_{i},g_{i},P_{i}}}{\sum\limits_{i = 1}^{N}P_{i}}}{{subject}\quad{to}}{{\Gamma_{i} \geq \gamma_{0}},{i = 1},2,\ldots\quad,N}} & {{Equation}\quad 3} \end{matrix}$ where γ₀ is the target SINR which is (for convenience) assumed to be equal for all links. The optimal receive beamforming weight w, therefore, is the minimum variance distortionless-response (MVDR) beamforming weight calculated and updated at steps 301 in FIG. 3 and is given by: $\begin{matrix} {w_{i} = {\frac{1}{c}R_{i}^{- 1}H_{{D{(i)}},{S{(i)}}}g_{i}}} & {{Equation}\quad 4} \end{matrix}$ where c is a normalization constant and the covariance matrix R_(i), is given by: $\begin{matrix} {R_{i} = {{\sum\limits_{{j = 1},{j \neq i}}^{N}{P_{j}H_{{D{(i)}},{S{(j)}}}g_{j}g_{j}^{H}H_{{D{(i)}},{S{(j)}}}^{H}}} + I}} & {{Equation}\quad 5} \end{matrix}$ where the variables are as defined above and I is the identity matrix, as is also discussed above.

To compute the transmit beamforming weight, in accordance with an embodiment of the present invention, at steps 302 an iterative procedure can be used based on the reciprocity of the channel represented as H_(d,s)=H_(s,d) ^(T). For example, the algorithm of FIG. 3 can be used for such purposes where each link maximizes the normalized SINR (which is defined as Γ_(i)/P_(i) for link i) while taking into account the interference that the link generates to other links.

Referring once again to FIG. 1B, that figure shows, for example, illustrative beam patterns for the network depicted in FIG. 1A generated by the beamforming procedure of FIG. 3 where, illustratively, five links 180-184 are scheduled and each node has an array of four antennas. In accordance with one embodiment of the present invention, there is no central control and, therefore, the decision of which links to participate in each array is determined in a distributed manner using only local information. Specifically, in accordance with an embodiment of the present invention, link i can participate in the contention only with probability r_(i), where i=1,2, . . . , N. These probabilities r₁, also referred to herein as persistence parameters, are updated locally. More particularly, let C be the set of links participating in the procedure of FIG. 3. Referring once again to FIG. 2, during the contention resolution period 210, the source nodes S(i), where iεC, first send out short Request-To-Send (RTS) messages 215. For fast convergence of the algorithm of FIG. 3, the source nodes can use the beamforming weights w_(i) discussed above that may be, illustratively, stored in a cache at each source node. Depending on the time elapsed since the last successful transmission and the speed of the channel variation, there may be no such weights stored at a particular source node. In such a case, the transmission of the RTS message may be accomplished without beamforming, i.e., an omnidirectional transmission can be used. The RTS message 215 contains, illustratively, a training sequence unique to the destination node so that the intended recipient of the message can use a training sequence to direct its beamformer toward the source node. The training sequences can be chosen, for example, from a set of low cross-correlation sequences such as well-known Gold codes or, illustratively, from a set of phase-shifted versions of a low auto-correlation pseudorandom (PN) sequence, such as m-sequences, which are also well-known to one skilled in the art. The RTS message 215 preferably also contains the address of node S(i) and cyclic redundancy check (CRC) bits.

Upon reception of the RTS messages 215, each destination node D(i), where iεC, replies with a Beamforming-at-Source (BFS) message 220 using the beamforming weights equal to the complex conjugate of the receive beamformers. The BFS message 220 contains a training sequence specific to the source node S(i) as well as a power control command to meet the target SINR at D(i). The source nodes then update their beamformer weights w_(i) and transmit powers, if necessary, and proceed to transmit Beamforming-at-Destination (BFD) messages 225 as shown at steps 303 in FIG. 3. This process is iterated N_(s)−1 times, i.e., until N_(s)−1 BFS and BFD transmissions occur, where Ns is the number of available transmission slots. After this iterative process, the destination nodes that have an SINR that meets the target SINR level will transmit a Clear-To-Send (CTS) message 230. The source links for which CTS message 230 is issued can then transmit data during the data transmission period 250.

During the data transmission period 250, a set A of active users, i.e., a set of links that have packets to transmit, exists. The set A is said to be valid if the following conditions are satisfied:

-   -   1. A node does not transmit and receive at the same time:         S(i)≠D(j) for all i, jεA, i≠j;     -   2. A node does not receive from multiple nodes at the same time:         S(i)≠S(j) for all i, jεA, i≠j; and     -   3. A node does not transmit to multiple nodes at the same time:         D(i)≠D(j) for all i, jεA, i≠j.         As one skilled in the art will recognize, condition 1 is derived         as a function of typical radio limitations. Conditions 2 and 3         are imposed to simplify the design of the radio and the MAC         protocol. Complexity permitting, one skilled in the art will         recognize that these two conditions can be relieved to yield an         even higher data throughput.         A valid set of links is considered to be feasible if all links         in the set can achieve a desired SINR level and if appropriate         transmission parameters that achieve the given target SINR level         can be found, for example, by performing the IMMSE procedure in         FIG. 3. Otherwise, the set, even if valid, is rejected as         infeasible. As one skilled in the art will recognize, such an         inability to reach a desired SINR level may be caused by         interference among different signals and, therefore, proper         scheduling is necessary to help insure that valid sets of links         are also feasible. In particular, by insuring that only one         specific link in a contention region is capable of transmitting         or receiving, interference can be minimized.

FIG. 4A shows an example topology of active links that require scheduling. Due to conditions 1-3 discussed above, for example, only one link among links {403, 404, 405, 406} can be scheduled in the same slot, and thus this set is said to be a contention region (i.e., those links will be contending for transmission slots). Similarly, the sets of links {401, 403}, {402, 404}, {405, 407}, and {406, 408} are also contention regions. However, contention regions may not be easily identified due to the accumulated interference from multiple links. To see this, consider the topology depicted in FIG. 4B. Assume that the set of feasible link sets for this particular topology is {{409}, {410}, {411}, {409, 410}, {410, 411}, {411, 409}}. As one skilled in the art will recognize, the contention region cannot be defined in this case. Specifically, as discussed above, the term contention region refers to a region in which no more than one link can be scheduled at a given time. However, in the topology of FIG. 4B, it may be possible to schedule two or more of the links at the same time.

Thus, the present inventors have recognized that it is desirable to treat all links in the network as an “extended” contention region in which only a certain set of links are permitted simultaneous transmission. Specifically, the present inventors have recognized that the problem of infeasibility may advantageously be addressed by minimizing traffic collisions over the entire network. Therefore, in accordance with another embodiment of the present invention, a utility function for link i, i=1,2, . . . , N can be defined as: $\begin{matrix} {{U_{i}\left( r_{i} \right)} = \left\{ \begin{matrix} {w_{i}\frac{r_{i}^{1 - \alpha}}{1 - \alpha}} & {\alpha > 0} \\ {w_{i}\log\quad r_{i}} & {\alpha = 1} \end{matrix} \right.} & {{Equation}\quad 6} \end{matrix}$ where U_(i)(•) is a continuously differentiable, strictly concave, increasing function; r_(i) is the probability of successful medium access of link i; and w_(i) corresponds to the beamforming weight associated with link i with w_(i)>0. The set of all valid link sets is denoted as v and the set of all feasible link sets is denoted as ℑ. Thus, the objective function that the network must maximize is defined by: $\begin{matrix} {{{T(r)} = {{\sum\limits_{i = 1}^{N}{U_{i}\left( r_{i} \right)}} - {\beta_{1}{P_{1}(r)}} - {\beta_{2}{P_{2}(r)}}}}{where}} & {{Equation}\quad 7} \\ {{{P_{1}(r)} = {\sum\limits_{c \in C}{\int_{0}^{\sum\limits_{j \in c}r_{j}}{\frac{\left( {u - 1} \right)^{+}}{u}{\mathbb{d}u}}}}}{and}} & {{Equation}\quad 8} \\ {{P_{2}(r)} = {\sum\limits_{k \in {c/\mathcal{J}}}{\prod\limits_{j \in k}\quad r_{j}}}} & {{Equation}\quad 9} \end{matrix}$ and where r is the vector of r_(i)'s; β₁ and β₂ are nonnegative constants; C is the set of contention regions due to the validity check, discussed above; (•)+equivalent to max{0,•}; and the other variables are as described above. Equation 7 includes terms that apply a penalty to the probability of transmission based on the existence of either an invalidity condition or an infeasibility condition. Specifically, the first term in equation 7 is the aggregate utility of the network where P₁(r) represents the penalty due to the appearance of an invalid link set and P₂(r) corresponds to the penalty due to the infeasible link set. Therefore, maximizing T(r) balances (via constants β₁ and β₂) the aggregate throughput and the excess of resources resulting from an undesirable set of links being present in the contention period.

It should be mentioned that T(r) is not concave since P₂(r) is not convex (nor concave). Thus, T(r) can possibly have multiple local optimal values. However, a non-cooperative game can be formulated whose Nash equilibriums correspond to the local optimal values, and a decentralized update rule can be derived that converges to one of the Nash equilibriums. One skilled in the art will recognize that a Nash equilibrium is an equilibrium in game theory in which, applied to this case, during the contention phase of the medium access control process described here, each link's probability of transmission is optimal given the probabilities of the other links. Specifically, such a decentralized update rule can be derived via a non-cooperative game where link i unilaterally maximizes the objective function given by: $\begin{matrix} {{J_{i}\left( r_{i} \right)} = {{U_{i}\left( r_{i} \right)} - {\beta_{1}{\sum\limits_{{c \in C},{i \in c}}{\int_{0}^{\sum\limits_{j \in c}r_{j}}{\frac{\left( {u - 1} \right)^{+}}{u}{\mathbb{d}u}}}}} - {\beta_{2}{\sum\limits_{{k \in {c\backslash}},{i \in k}}{\prod\limits_{j \in k}\quad{r_{j}.}}}}}} & {{Equation}\quad 10} \end{matrix}$ where the variables are as described herein above. With r_(j) fixed and j≠i, J_(i)(r_(i)) is maximized when: $\begin{matrix} {\frac{\mathbb{d}J_{i}}{\mathbb{d}r_{i}} = {{{U_{i}^{\prime}\left( r_{i} \right)} - {\beta_{1}{\sum\limits_{{c \in C},{i \in c}}\frac{\left( {{\sum\limits_{j \in c}r_{j}} - 1} \right)^{+}}{\sum\limits_{j \in c}r_{j}}}} - {\beta_{2}{\sum\limits_{{k \in {c\backslash}},{i \in k}}{\prod\limits_{{j \in k},{j \neq i}}\quad r_{j}}}}} = 0.}} & {{Equation}\quad 11} \end{matrix}$

One skilled in the art will recognize that Equation 11 represents the set of first order necessary conditions of optimality of maximizing T(r) and, therefore, a Nash equilibrium exists for the non-cooperative game, as specified by Equation 10. Moreover, the distributed update rule for r_(i) can be given by: $\begin{matrix} {\frac{\mathbb{d}{r_{i}(t)}}{\mathbb{d}t} = {w_{i} - {\left( {r_{i}(t)} \right)^{\alpha}\begin{bmatrix} {{\beta_{1}{\sum\limits_{{c \in C},{i \in C}}\frac{\left( {{\sum\limits_{j \in c}{r_{j}(t)}} - 1} \right)^{+}}{\sum\limits_{j \in c}{r_{j}(t)}}}} -} \\ {\beta_{2}{\sum\limits_{{k \in {c\backslash\mathcal{J}}},{i \in k}}{\prod\limits_{{j \in k},{j \neq i}}\quad{r_{j}(t)}}}} \end{bmatrix}}}} & {{Equation}\quad 12} \end{matrix}$ in which U_(i)(r_(i)) was replaced by Equation 6 where the Nash equilibrium is the stable point of the update rule, at which point: $\begin{matrix} {\frac{\mathbb{d}{T(r)}}{\mathbb{d}t} = {{\sum\limits_{i = 1}^{N}\quad{\frac{1}{r_{i}^{\alpha}}\quad\left( {w_{i} - {r_{i}^{\alpha}\begin{bmatrix} {{\beta_{1}{\sum\limits_{{c \in C},{i \in C}}\quad\frac{\left( {{\sum\limits_{j \in c}\quad r_{j}} - 1} \right)^{+}}{\sum\limits_{j \in c}\quad r_{j}}}} +} \\ {\beta_{2}{\sum\limits_{{k \in {v\backslash{\mathfrak{J}}}},{i \in k}}\quad{\prod\limits_{{j \in k},{j \neq i}}\quad{r_{j}(t)}}}} \end{bmatrix}}} \right)^{2}}} \geq \quad 0.}} & {{Equation}\quad 13} \end{matrix}$ Thus, as one skilled in the art will recognize, according to Equation 13, T(r) guarantees the convergence of the system.

To implement the foregoing update rule it is assumed that the term $P_{inv}^{i}\overset{\Delta}{=}{\sum\limits_{{c \in C},{i \in C}}\quad\frac{\left( {{\sum\limits_{j \in c}\quad r_{j}} - 1} \right)^{+}}{\sum\limits_{j \in c}\quad r_{j}}}$ approximates the probability that the given transmission set containing link i is invalid, assuming r_(i) are small. Under the same assumption, the term ${P_{\inf}^{i}\text{❘}i}\overset{\Delta}{=}{\sum\limits_{{k \in {v\backslash{\mathfrak{J}}}},{i \in k}}\quad{\prod\limits_{{j \in k},{j \neq i}}\quad r_{j}}}$ approximates the conditional probability of the given transmission set being valid yet infeasible. The exact expression would, therefore, be: $\begin{matrix} {{P_{\inf,{exact}}^{i}\text{❘}i} = {\sum\limits_{{k \in {v\backslash\mathcal{J}}},{i \in k}}\quad{\prod\limits_{{j \in k},{j \neq i}}\quad{r_{j}{\prod\limits_{j \notin k}\quad{\left( {1 - r_{j}} \right).}}}}}} & {{Equation}\quad 14} \end{matrix}$

Therefore, the update Equation 12 can be re-written as: r _(i)(t+1)=r _(i)(t)+w _(i)−β₁(r _(i)(t))^(α) P _(inv) ^(i)−β₂(r _(i)(t))^(α−1) P _(inf) ^(i),  Equation 15 where P_(inf) ^(i)=r_(i) P_(inf) ^(i)|i. We assume that each node can detect the violation of conditions 1 and 2 in the contention period and that condition 3 is satisfied in practice by the transmitting node that can make a scheduling decision for the outgoing links. The detection of the infeasible case can be accomplished, for example, by measuring the final SINR level due to the CTS message packets. If the SINR level is not equal to the target SINR level, the nodes can determine that an infeasible case has occurred.

FIG. 5 is a flowchart of the processing performed by each node in the network. At step 501, it is determined whether the node has any information to transmit. If so, and if the node has multiple outgoing links, then, at step 502, the node performs local scheduling to schedule the multiple outgoing links. Then, at step 503, the node decides whether it will contend for a transmission slot. As discussed above, this decision is made in accordance with the persistence parameter, r_(i). If the node does decide to participate in the contention period, then at step 504, the node commences computations in accordance with the physical-layer IMMSE procedure, discussed above and shown in FIG. 3. If an invalidity condition is detected at step 505, then the node updates the persistence parameter at step 508 and proceeds without transmitting. If an infeasibility condition is detected at step 506, then the node updates the persistence parameter at step 509 and again proceeds without transmitting. Otherwise, the node transmits at step 507 using the optimized beam pattern and power settings. The persistence parameter is updated at step 510, and the node moves on to the next transmission slot at step 511.

If the node decides not to contend for the transmission slot at step 503, then the node updates the persistence parameter at step 512. The node then checks at step 513 whether it has received an RTS message and is designated as a receiving node for any links to be scheduled this transmission slot. If it is designated as such a receiving node, then the node participates at step 514 in the IMMSE procedure of FIG. 3 and proceeds to receive the transmission at 515. Similarly, if the node has no information to transmit at step 501, the node can proceed with the check at step 513 and participate in the IMMSE procedure if necessary.

FIG. 6 shows a block diagram of an illustrative network node, such as node in FIGS. 1A and 1B, that is adapted to perform calculations associated with the above medium access control algorithm, including the aforementioned beamforming and power control calculations. Referring to FIG. 6, network node 607 may be implemented on any suitable computer that is adapted to receive store and transmit data such as the aforementioned beamforming and power control data. Illustrative sensor node 607 may have, for example, a processor 602 (or multiple processors) which controls the overall operation of the node 607. Such operation is defined by computer program instructions stored in a memory 603 and executed by processor 602. The memory 603 may be any type of computer readable medium, including without limitation electronic, magnetic, or optical media. Further, while one memory unit 603 is shown in FIG. 6, it is to be understood that memory unit 603 could comprise multiple memory units, with such memory units comprising any type of memory. Network node 607 also comprises illustrative network interface 604 for use in programming the network node and/or to facilitate the use of the sensor node 607 in a wired network application. Network node 607 also illustratively comprises a storage medium, such as a computer hard disk drive 605 for storing, for example, data and computer programs adapted for use in accordance with the principles of the present invention as described hereinabove. One skilled in the art will recognize that, due to the typical compact size of sensor nodes that may comprise network node 607, flash memory may preferably be used in place of hard disk drive 605. Network node 607 also illustratively comprises illustrative amplifier 601 and antenna 608 for transmitting the aforementioned calculations in a wireless network. Finally, since many applications of sensor networks that may make up such a network node require an independent power source, network node 607 also has battery 606 to power the above components. One skilled in the art will recognize that network node 607 is merely illustrative in nature and that various hardware and software components may be adapted for equally advantageous use in a computer in accordance with the principles of the present invention.

The foregoing Detailed Description is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Detailed Description, but rather from the claims as interpreted according to the full breadth permitted by the patent laws. It is to be understood that the embodiments shown and described herein are only illustrative of the principles of the present invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention. 

1. A method for medium access control in a distributed communication network, comprising: associating a persistence parameter with a potential link between a transmitting node and a receiving node in the network; determining as a function of said persistence parameter whether the transmitting node participates in contention for a transmission slot; if said transmitting node participates in said contention for said transmission slot, computing adaptive transmission parameters for said transmitting node as a function of an invalidity condition and an infeasibility condition; and transmitting from said transmitting node in the transmission slot using the computed adaptive transmission parameters if said invalidity condition and said infeasibility condition are met.
 2. The method of claim 1 wherein if the invalidity condition is not met, the persistence parameter is updated using a first parameter that is a function of the existence of an invalid link.
 3. The method of claim 2 wherein the persistence parameter is updated according to the equation r=r−β₁r^(α−1) where r is the persistence parameter and β₁ is the first parameter and α is a parameter greater than
 0. 4. The method of claim 1 wherein if the infeasibility condition is not met, the persistence parameter is updated using a second parameter weighting the penalty due to an infeasible link.
 5. The method of claim 4 wherein the persistence parameter is updated in accordance with r=r−β₂r^(α−1) where r is the persistence parameter and β₂ is the second parameter and α is a parameter greater than
 0. 6. The method of claim 1 wherein the persistence parameter is updated if the transmitting node fails to participate in the contention for the transmission slot.
 7. The method of claim 1 wherein the persistence parameter represents a probability of the transmitting node participating in the contention for the transmission slot.
 8. The method of claim 1 wherein at least one of said transmitting node and said receiving node comprise multiple antennas and wherein the adaptive transmission parameters include parameters for adaptive beamforming.
 9. The method of claim 1 wherein at least one of said transmitting node and said receiving node comprise multiple antennas and wherein the adaptive transmission parameters include parameters for power control.
 10. The method of claim 1 wherein at least one of said transmitting node and said receiving node compute the adaptive transmission parameters using an iterative mean square error procedure.
 11. Apparatus for medium access control in a distributed communication network, comprising: means for associating a persistence parameter with a potential link between a transmitting node and a receiving node in the network; means for determining as a function of said persistence parameter whether the transmitting node participates in contention for a transmission slot; means for computing adaptive transmission parameters for said transmitting node if said transmitting node participates in said contention for said transmission slot, said adaptive transmission parameters computed as a function of an invalidity condition and an infeasibility condition; and means for transmitting from said transmitting node in the transmission slot using the computed adaptive transmission parameters if said invalidity condition and said infeasibility condition are met.
 12. The apparatus of claim 11 further comprising means for updating said persistence parameter using a first parameter that is a function of the existence of an invalid link if the invalidity condition is not met.
 13. The apparatus of claim 12 further comprising means for updating said persistence parameter according to the equation r=r−β₁r^(α−1) where r is the persistence parameter and β₁ is the first parameter and α is a parameter greater than
 0. 14. The apparatus of claim 11 further comprising means for updating said persistence parameter using a second parameter weighting the penalty due to an infeasible link if the infeasibility condition is not met.
 15. The apparatus of claim 14 further comprising means for updating said persistence parameter according to r=r−β₂r^(α−1) where r is the persistence parameter and β₂ is the second parameter and α is a parameter greater than
 0. 16. The apparatus of claim 11 further comprising means for updating said persistence parameter if the transmitting node fails to participate in the contention for the transmission slot.
 17. The apparatus of claim 11 wherein the persistence parameter represents a probability of the transmitting node participating in the contention for the transmission slot.
 18. The apparatus of claim 11 wherein at least one of said transmitting node and said receiving node comprise multiple antennas and wherein the adaptive transmission parameters include parameters for adaptive beamforming.
 19. The apparatus of claim 11 wherein at least one of said transmitting node and said receiving node comprise multiple antennas and wherein the adaptive transmission parameters include parameters for power control.
 20. The apparatus of claim 11 wherein at least one of said transmitting node and said receiving node compute the adaptive transmission parameters using an iterative mean square error procedure.
 21. A computer readable medium storing computer program instructions which, when executed on a processor, define the steps of: associating a persistence parameter with a potential link between a transmitting node and a receiving node in the network; determining as a function of said persistence parameter whether the transmitting node participates in contention for a transmission slot; if said transmitting node participates in said contention for said transmission slot, computing adaptive transmission parameters for said transmitting node as a function of an invalidity condition and an infeasibility condition; and transmitting from said transmitting node in the transmission slot using the computed adaptive transmission parameters if said invalidity condition and said infeasibility condition are met.
 22. The computer readable medium of claim 21 further comprising program instructions which, when executed on a processor, define the step of: if the invalidity condition is not met, updating said persistence parameter using a first parameter that is a function of the existence of an invalid link.
 23. The computer readable medium of claim 22 wherein the persistence parameter is updated according to the equation r=r−β₁r^(α−1) where r is the persistence parameter and β₁ is the first parameter and α is a parameter greater than
 0. 24. The computer readable medium of claim 21 further comprising program instructions which, when executed on a processor, define the step of: if the infeasibility condition is not met, updating the persistence parameter using a second parameter weighting the penalty due to an infeasible link.
 25. The computer readable medium of claim 24 wherein the persistence parameter is updated in accordance with r=r−β₂r^(α−1) where r is the persistence parameter and β₂ is the second parameter and α is a parameter greater than
 0. 26. The computer readable medium of claim 21 further comprising program instructions which, when executed on a processor, define the step of: updating said persistence parameter if the transmitting node fails to participate in the contention for the transmission slot.
 27. The computer readable medium of claim 21 wherein the persistence parameter represents a probability of the transmitting node participating in the contention for the transmission slot.
 28. The computer readable medium of claim 21 wherein at least one of said transmitting node and said receiving node comprise multiple antennas and wherein the adaptive transmission parameters include parameters for adaptive beamforming.
 29. The computer readable medium of claim 21 wherein at least one of said transmitting node and said receiving node comprise multiple antennas and wherein the adaptive transmission parameters include parameters for power control.
 30. The computer readable medium of claim 21 wherein at least one of said transmitting node and said receiving node compute the adaptive transmission parameters using an iterative mean square error procedure. 